<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<title>Number Of Levels</title>
		<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
		<link href="../style.css" type="text/css" rel="STYLESHEET"/>
	</head>
	<body>
		<h1>Number Of Levels
        	<span id="logo"><a href="http://eclipse-metrics.sourceforge.net"> <img src="../images/logo.gif" border="0" alt="Metrics Logo"/></a></span>
        </h1>
		<p>This metric is an indication of the maximum number of levels of nesting in a method. The idea of the metric is that a large Number Of Levels 
			increases complexity and reduces comprehensibility. In addition, such methods generally (but not necessarily) operate at the lowest level of 
			abstraction or at mixed levels of abstraction, both of which contribute to the confusion.</p>
		<p>All methods that have a large Number Of Levels can be simplified by extracting private methods or by creating a <a 
			href="http://www.c2.com/cgi/wiki?MethodObject"  title="Description of Method Object at c2.com">Method Object</a>. Both of these result in naming of the different parts of 
			the original method, thus raising the level of abstraction.</p>
		<p>Note that the Number Of Levels metric and the degree of indentation of the code are not necessarily the same. Consider the case of cascaded 'if/else 
			if' statements. Each 'else if' is another level of nesting but this is not usually the way it is displayed in source listings.</p>
		<hr/>
        <div class="attribution">
    		This plugin is provided by <a href="http://www.stateofflow.com" title="State Of Flow homepage">State Of Flow</a>
    	</div>
	</body>
</html>